package com.lp.biz.member.mapper;


import com.lp.common.context.UserDetail;

import java.util.List;
import java.util.Set;

/**
 * UserMapper 接口
 * @program: backend
 * @author Ke.Song
 * @since 2024-03-11 22:46:16
 */
public interface UserMapper {

    /**
     * 获取用户详情
     * @param memberId 用户id
     * @return 查询结果
     */
    UserDetail getUserDetail(Integer memberId);

    /**
     * 获取所有表名
     * @return 查询结果
     */
    List<String> getTables();

    /**
     * id回归
     * @param table 表名
     * @param id 最小id
     */
    void regressionId(String table, Integer id);

    /**
     * 获取缺失的最小id
     * @param table 表名
     * @return 查询结果
     */
    Integer getDeletionId(String table);

    /**
     * 获取所有字段名
     * @param table 表名
     * @return 查询结果
     */
    Set<String> getColumns(String table);

    /**
     * 设置自增id
     * @param table 表名
     */
    void setAutoIncrement(String table);
}
